gboolean
ostree_repo_prepare_transaction (OstreeRepo *self,
+ gboolean enable_commit_hardlink_scan,
GCancellable *cancellable,
GError **error)
{
self->in_transaction = TRUE;
- if (!self->loose_object_devino_hash)
+ if (enable_commit_hardlink_scan)
{
- self->loose_object_devino_hash = g_hash_table_new_full (devino_hash, devino_equal, g_free, g_free);
+ if (!self->loose_object_devino_hash)
+ self->loose_object_devino_hash = g_hash_table_new_full (devino_hash, devino_equal, g_free, g_free);
+ g_hash_table_remove_all (self->loose_object_devino_hash);
+ if (!scan_loose_devino (self, self->loose_object_devino_hash, cancellable, error))
+ goto out;
}
- g_hash_table_remove_all (self->loose_object_devino_hash);
- if (!scan_loose_devino (self, self->loose_object_devino_hash, cancellable, error))
- goto out;
ret = TRUE;
out:
const char *object);
gboolean ostree_repo_prepare_transaction (OstreeRepo *self,
+ gboolean enable_commit_hardlink_scan,
GCancellable *cancellable,
GError **error);
}
}
- if (!ostree_repo_prepare_transaction (pull_data->repo, NULL, error))
+ if (!ostree_repo_prepare_transaction (pull_data->repo, FALSE, NULL, error))
goto out;
pull_data->metadata_scan_active = TRUE;
goto out;
}
- if (!ostree_repo_prepare_transaction (repo, cancellable, error))
+ if (!ostree_repo_prepare_transaction (repo, TRUE, cancellable, error))
goto out;
in_transaction = TRUE;
g_print ("%u objects to copy\n", g_hash_table_size (objects_to_copy));
- if (!ostree_repo_prepare_transaction (data.dest_repo, cancellable, error))
+ if (!ostree_repo_prepare_transaction (data.dest_repo, FALSE, cancellable, error))
goto out;
g_hash_table_iter_init (&hash_iter, objects_to_copy);